#!/bin/bash

# AI项目后端一键安装脚本
# 使用方法: ./install.sh

echo "🚀 AI项目后端一键安装脚本"
echo "================================"

# 获取脚本所在目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR"

echo "📁 当前目录: $SCRIPT_DIR"

# 检查Python版本
echo "🐍 检查Python版本..."
python3 --version
if [ $? -ne 0 ]; then
    echo "❌ Python3未安装，请先安装Python3"
    exit 1
fi

# 创建虚拟环境
echo "🔧 创建虚拟环境..."
if [ -d "venv" ]; then
    echo "⚠️  虚拟环境已存在，是否重新创建? (y/n)"
    read -r response
    if [[ "$response" =~ ^([yY][eE][sS]|[yY])$ ]]; then
        rm -rf venv
        python3 -m venv venv
    fi
else
    python3 -m venv venv
fi

# 激活虚拟环境
echo "🔌 激活虚拟环境..."
source venv/bin/activate

# 升级pip
echo "⬆️  升级pip..."
pip install --upgrade pip

# 安装依赖
echo "📦 安装依赖包..."
pip install -r requirements.txt

# 创建必要的目录
echo "📁 创建必要目录..."
mkdir -p logs
mkdir -p static

# 检查.env文件
echo "⚙️  检查环境配置..."
if [ ! -f ".env" ]; then
    echo "⚠️  .env文件不存在，创建示例文件..."
    cat > .env << EOF
# AI配置
AI_BASE_URL=https://api.openai.com/v1
AI_API_KEY=your_openai_api_key_here
AI_MODEL=gpt-3.5-turbo

# 数据库配置
DB_HOST=localhost
DB_PORT=3306
DB_NAME=langchain_ai
DB_USER=root
DB_PASSWORD=your_db_password

# 应用配置
DEBUG=False
EOF
    echo "📝 请编辑 .env 文件，配置正确的环境变量"
else
    echo "✅ .env文件已存在"
fi

# 设置脚本权限
echo "🔐 设置脚本权限..."
chmod +x start.sh
chmod +x stop.sh
chmod +x restart.sh
chmod +x status.sh

echo ""
echo "✅ 安装完成！"
echo ""
echo "📋 下一步操作:"
echo "1. 编辑 .env 文件，配置环境变量"
echo "2. 确保MySQL数据库已启动并创建数据库"
echo "3. 运行数据库初始化: python models/models.py"
echo "4. 启动服务: ./start.sh"
echo ""
echo "🔧 常用命令:"
echo "  启动服务: ./start.sh"
echo "  停止服务: ./stop.sh"
echo "  重启服务: ./restart.sh"
echo "  查看状态: ./status.sh" 